<?php
/**
 * Responsável pelos carregamentos de classes indefinidas
 * 
 * @author cristiano
 *
 */
class Loader {

	/**
	 * Carreta os plugins registrados no controlador e executa-os retornando o novo controlador
	 * 
	 * @param $controle objeto do tipo Controle
	 * @return Controle
	 */
	public static function CarregaPlugins(Controle $controle){
		$plugins = $controle->GetPlugins();
		if($plugins){
			foreach($plugins as $plugin){
				$plug = new $plugin($controle);
				$plug->Executar();
				$novo_controle = $plug->Getcontrole();
			}
		}else{
			$novo_controle = $controle;
		}
		
		
		return $novo_controle;
	}
	
}